/**
 * 
 */
package io.pkts.buffer;

import io.pkts.buffer.Buffer;
import io.pkts.buffer.Buffers;

/**
 * Simple place holder for a bunch of raw data used for testing purposes...
 * 
 * @author jonas@jonasborjesson.com
 */
public final class RawData {

    /**
     * A full raw ethernet frame. Copied from a wireshark dump. It contains the
     * following frames:
     * 
     * Ehternet II -> IPv4 -> UDP -> SIP -> SDP
     */
    public static final byte[] rawEthernetFrame = new byte[] { (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
        (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
        (byte) 0x08, (byte) 0x00, (byte) 0x45, (byte) 0x00, (byte) 0x02, (byte) 0x15, (byte) 0x00, (byte) 0x00,
        (byte) 0x40, (byte) 0x00, (byte) 0x40, (byte) 0x11, (byte) 0x3a, (byte) 0xd6, (byte) 0x7f, (byte) 0x00,
        (byte) 0x00, (byte) 0x01, (byte) 0x7f, (byte) 0x00, (byte) 0x00, (byte) 0x01, (byte) 0x13, (byte) 0xc4,
        (byte) 0x13, (byte) 0xe2, (byte) 0x02, (byte) 0x01, (byte) 0x00, (byte) 0x15, (byte) 0x49, (byte) 0x4e,
        (byte) 0x56, (byte) 0x49, (byte) 0x54, (byte) 0x45, (byte) 0x20, (byte) 0x73, (byte) 0x69, (byte) 0x70,
        (byte) 0x3a, (byte) 0x73, (byte) 0x65, (byte) 0x72, (byte) 0x76, (byte) 0x69, (byte) 0x63, (byte) 0x65,
        (byte) 0x40, (byte) 0x31, (byte) 0x32, (byte) 0x37, (byte) 0x2e, (byte) 0x30, (byte) 0x2e, (byte) 0x30,
        (byte) 0x2e, (byte) 0x31, (byte) 0x3a, (byte) 0x35, (byte) 0x30, (byte) 0x39, (byte) 0x30, (byte) 0x20,
        (byte) 0x53, (byte) 0x49, (byte) 0x50, (byte) 0x2f, (byte) 0x32, (byte) 0x2e, (byte) 0x30, (byte) 0x0d,
        (byte) 0x0a, (byte) 0x56, (byte) 0x69, (byte) 0x61, (byte) 0x3a, (byte) 0x20, (byte) 0x53, (byte) 0x49,
        (byte) 0x50, (byte) 0x2f, (byte) 0x32, (byte) 0x2e, (byte) 0x30, (byte) 0x2f, (byte) 0x55, (byte) 0x44,
        (byte) 0x50, (byte) 0x20, (byte) 0x31, (byte) 0x32, (byte) 0x37, (byte) 0x2e, (byte) 0x30, (byte) 0x2e,
        (byte) 0x31, (byte) 0x2e, (byte) 0x31, (byte) 0x3a, (byte) 0x35, (byte) 0x30, (byte) 0x36, (byte) 0x30,
        (byte) 0x3b, (byte) 0x62, (byte) 0x72, (byte) 0x61, (byte) 0x6e, (byte) 0x63, (byte) 0x68, (byte) 0x3d,
        (byte) 0x7a, (byte) 0x39, (byte) 0x68, (byte) 0x47, (byte) 0x34, (byte) 0x62, (byte) 0x4b, (byte) 0x2d,
        (byte) 0x31, (byte) 0x36, (byte) 0x37, (byte) 0x33, (byte) 0x32, (byte) 0x2d, (byte) 0x31, (byte) 0x2d,
        (byte) 0x30, (byte) 0x0d, (byte) 0x0a, (byte) 0x46, (byte) 0x72, (byte) 0x6f, (byte) 0x6d, (byte) 0x3a,
        (byte) 0x20, (byte) 0x73, (byte) 0x69, (byte) 0x70, (byte) 0x70, (byte) 0x20, (byte) 0x3c, (byte) 0x73,
        (byte) 0x69, (byte) 0x70, (byte) 0x3a, (byte) 0x73, (byte) 0x69, (byte) 0x70, (byte) 0x70, (byte) 0x40,
        (byte) 0x31, (byte) 0x32, (byte) 0x37, (byte) 0x2e, (byte) 0x30, (byte) 0x2e, (byte) 0x31, (byte) 0x2e,
        (byte) 0x31, (byte) 0x3a, (byte) 0x35, (byte) 0x30, (byte) 0x36, (byte) 0x30, (byte) 0x3e, (byte) 0x3b,
        (byte) 0x74, (byte) 0x61, (byte) 0x67, (byte) 0x3d, (byte) 0x31, (byte) 0x36, (byte) 0x37, (byte) 0x33,
        (byte) 0x32, (byte) 0x53, (byte) 0x49, (byte) 0x50, (byte) 0x70, (byte) 0x54, (byte) 0x61, (byte) 0x67,
        (byte) 0x30, (byte) 0x30, (byte) 0x31, (byte) 0x0d, (byte) 0x0a, (byte) 0x54, (byte) 0x6f, (byte) 0x3a,
        (byte) 0x20, (byte) 0x73, (byte) 0x75, (byte) 0x74, (byte) 0x20, (byte) 0x3c, (byte) 0x73, (byte) 0x69,
        (byte) 0x70, (byte) 0x3a, (byte) 0x73, (byte) 0x65, (byte) 0x72, (byte) 0x76, (byte) 0x69, (byte) 0x63,
        (byte) 0x65, (byte) 0x40, (byte) 0x31, (byte) 0x32, (byte) 0x37, (byte) 0x2e, (byte) 0x30, (byte) 0x2e,
        (byte) 0x30, (byte) 0x2e, (byte) 0x31, (byte) 0x3a, (byte) 0x35, (byte) 0x30, (byte) 0x39, (byte) 0x30,
        (byte) 0x3e, (byte) 0x0d, (byte) 0x0a, (byte) 0x43, (byte) 0x61, (byte) 0x6c, (byte) 0x6c, (byte) 0x2d,
        (byte) 0x49, (byte) 0x44, (byte) 0x3a, (byte) 0x20, (byte) 0x31, (byte) 0x2d, (byte) 0x31, (byte) 0x36,
        (byte) 0x37, (byte) 0x33, (byte) 0x32, (byte) 0x40, (byte) 0x31, (byte) 0x32, (byte) 0x37, (byte) 0x2e,
        (byte) 0x30, (byte) 0x2e, (byte) 0x31, (byte) 0x2e, (byte) 0x31, (byte) 0x0d, (byte) 0x0a, (byte) 0x43,
        (byte) 0x53, (byte) 0x65, (byte) 0x71, (byte) 0x3a, (byte) 0x20, (byte) 0x31, (byte) 0x20, (byte) 0x49,
        (byte) 0x4e, (byte) 0x56, (byte) 0x49, (byte) 0x54, (byte) 0x45, (byte) 0x0d, (byte) 0x0a, (byte) 0x43,
        (byte) 0x6f, (byte) 0x6e, (byte) 0x74, (byte) 0x61, (byte) 0x63, (byte) 0x74, (byte) 0x3a, (byte) 0x20,
        (byte) 0x73, (byte) 0x69, (byte) 0x70, (byte) 0x3a, (byte) 0x73, (byte) 0x69, (byte) 0x70, (byte) 0x70,
        (byte) 0x40, (byte) 0x31, (byte) 0x32, (byte) 0x37, (byte) 0x2e, (byte) 0x30, (byte) 0x2e, (byte) 0x31,
        (byte) 0x2e, (byte) 0x31, (byte) 0x3a, (byte) 0x35, (byte) 0x30, (byte) 0x36, (byte) 0x30, (byte) 0x0d,
        (byte) 0x0a, (byte) 0x4d, (byte) 0x61, (byte) 0x78, (byte) 0x2d, (byte) 0x46, (byte) 0x6f, (byte) 0x72,
        (byte) 0x77, (byte) 0x61, (byte) 0x72, (byte) 0x64, (byte) 0x73, (byte) 0x3a, (byte) 0x20, (byte) 0x37,
        (byte) 0x30, (byte) 0x0d, (byte) 0x0a, (byte) 0x53, (byte) 0x75, (byte) 0x62, (byte) 0x6a, (byte) 0x65,
        (byte) 0x63, (byte) 0x74, (byte) 0x3a, (byte) 0x20, (byte) 0x50, (byte) 0x65, (byte) 0x72, (byte) 0x66,
        (byte) 0x6f, (byte) 0x72, (byte) 0x6d, (byte) 0x61, (byte) 0x6e, (byte) 0x63, (byte) 0x65, (byte) 0x20,
        (byte) 0x54, (byte) 0x65, (byte) 0x73, (byte) 0x74, (byte) 0x0d, (byte) 0x0a, (byte) 0x43, (byte) 0x6f,
        (byte) 0x6e, (byte) 0x74, (byte) 0x65, (byte) 0x6e, (byte) 0x74, (byte) 0x2d, (byte) 0x54, (byte) 0x79,
        (byte) 0x70, (byte) 0x65, (byte) 0x3a, (byte) 0x20, (byte) 0x61, (byte) 0x70, (byte) 0x70, (byte) 0x6c,
        (byte) 0x69, (byte) 0x63, (byte) 0x61, (byte) 0x74, (byte) 0x69, (byte) 0x6f, (byte) 0x6e, (byte) 0x2f,
        (byte) 0x73, (byte) 0x64, (byte) 0x70, (byte) 0x0d, (byte) 0x0a, (byte) 0x43, (byte) 0x6f, (byte) 0x6e,
        (byte) 0x74, (byte) 0x65, (byte) 0x6e, (byte) 0x74, (byte) 0x2d, (byte) 0x4c, (byte) 0x65, (byte) 0x6e,
        (byte) 0x67, (byte) 0x74, (byte) 0x68, (byte) 0x3a, (byte) 0x20, (byte) 0x20, (byte) 0x20, (byte) 0x31,
        (byte) 0x32, (byte) 0x39, (byte) 0x0d, (byte) 0x0a, (byte) 0x0d, (byte) 0x0a, (byte) 0x76, (byte) 0x3d,
        (byte) 0x30, (byte) 0x0d, (byte) 0x0a, (byte) 0x6f, (byte) 0x3d, (byte) 0x75, (byte) 0x73, (byte) 0x65,
        (byte) 0x72, (byte) 0x31, (byte) 0x20, (byte) 0x35, (byte) 0x33, (byte) 0x36, (byte) 0x35, (byte) 0x35,
        (byte) 0x37, (byte) 0x36, (byte) 0x35, (byte) 0x20, (byte) 0x32, (byte) 0x33, (byte) 0x35, (byte) 0x33,
        (byte) 0x36, (byte) 0x38, (byte) 0x37, (byte) 0x36, (byte) 0x33, (byte) 0x37, (byte) 0x20, (byte) 0x49,
        (byte) 0x4e, (byte) 0x20, (byte) 0x49, (byte) 0x50, (byte) 0x34, (byte) 0x20, (byte) 0x31, (byte) 0x32,
        (byte) 0x37, (byte) 0x2e, (byte) 0x30, (byte) 0x2e, (byte) 0x31, (byte) 0x2e, (byte) 0x31, (byte) 0x0d,
        (byte) 0x0a, (byte) 0x73, (byte) 0x3d, (byte) 0x2d, (byte) 0x0d, (byte) 0x0a, (byte) 0x63, (byte) 0x3d,
        (byte) 0x49, (byte) 0x4e, (byte) 0x20, (byte) 0x49, (byte) 0x50, (byte) 0x34, (byte) 0x20, (byte) 0x31,
        (byte) 0x32, (byte) 0x37, (byte) 0x2e, (byte) 0x30, (byte) 0x2e, (byte) 0x31, (byte) 0x2e, (byte) 0x31,
        (byte) 0x0d, (byte) 0x0a, (byte) 0x74, (byte) 0x3d, (byte) 0x30, (byte) 0x20, (byte) 0x30, (byte) 0x0d,
        (byte) 0x0a, (byte) 0x6d, (byte) 0x3d, (byte) 0x61, (byte) 0x75, (byte) 0x64, (byte) 0x69, (byte) 0x6f,
        (byte) 0x20, (byte) 0x36, (byte) 0x30, (byte) 0x30, (byte) 0x31, (byte) 0x20, (byte) 0x52, (byte) 0x54,
        (byte) 0x50, (byte) 0x2f, (byte) 0x41, (byte) 0x56, (byte) 0x50, (byte) 0x20, (byte) 0x30, (byte) 0x0d,
        (byte) 0x0a, (byte) 0x61, (byte) 0x3d, (byte) 0x72, (byte) 0x74, (byte) 0x70, (byte) 0x6d, (byte) 0x61,
        (byte) 0x70, (byte) 0x3a, (byte) 0x30, (byte) 0x20, (byte) 0x50, (byte) 0x43, (byte) 0x4d, (byte) 0x55,
        (byte) 0x2f, (byte) 0x38, (byte) 0x30, (byte) 0x30, (byte) 0x30, (byte) 0x0d, (byte) 0x0a };

    /**
     * Default sip buffer containing a raw sip message
     */
    public static Buffer sipBuffer;

    static {
        final Buffer b = Buffers.wrap(RawData.rawEthernetFrame);
        sipBuffer = b.slice(42, b.capacity());

    }

}
